##[group]The ops scripts' tests
npm run test:ops
##[endgroup]
shell: bash -e /home/runner/_temp/18d9d5fbb0a23d67.sh

> test:ops
> node --test "scripts/ops/*.test.mjs"

✔ today's configuration is one namespace that takes nothing new by name (6.68694ms)
✔ each namespace's binding, jurisdiction and part in placing are read from the configuration (0.769041ms)
✔ standings add up holdings and health, and warn about what needs doing (2.200093ms)
✔ what Cloudflare has is checked against what is bound (1.145262ms)
Committer identity unknown

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'node@cloudchamber.(none)')
✔ refs, HEAD and differences are read as git writes them (3.639905ms)
✖ a chain restores every ref, and the drill fails once the live repository differs (91.262901ms)
✔ restore keeps only the refs the last entry names (306.959619ms)
✔ the windows are the UTC month so far and the last 24 hours (3.045984ms)
✔ a query asks for the variant's sums and dimensions under one alias (0.528511ms)
✔ Workers Logs are read from whichever dataset the schema has, or skipped (0.343411ms)
✔ groups are summed per name, named from the listing, sorted largest first, with totals (1.898402ms)
✔ a dataset that errors or is missing is a note, and the others still report (72.440013ms)
✔ the JSON report is one snake_case object with every row (1.699302ms)
✔ the command line reads --json, --top and the account (0.388101ms)
✔ errors, fallbacks, failed watcher queries and an all-empty account fail the check (0.856601ms)
✔ the watcher queries are billing's, field for field, over the last full hour (26.700468ms)
✔ keys, plans and what a restore records (5.991828ms)
✔ restored repositories are served read-only, and pushes taken later are reconciled (2693.303513ms)
✔ a git store over HTTP is restored into through its API (1287.244701ms)
✔ tokens are priced at each tier's list price, the fast tier's scaled for extra turns (1.714913ms)
✔ a failed attempt is paid for, and Auto retries one tier up until the most capable (1.882332ms)
✔ routing before Auto is replayed as it was (0.421491ms)
✔ the comparison totals each policy and its cost per merged change (2.122153ms)
✔ the sample is well formed and every task is priced (1.628913ms)
✔ billing's runs become tasks; reviews keep the tier they ran on (0.574011ms)
✔ the routing estimated is the runner's configuration (6.167809ms)
✔ the command line has defaults and bounds (53.480697ms)
✔ the window is the last N days (0.659361ms)
✔ the query is for one script, with the variant's sums and dimensions (0.3764ms)
✔ rows are named, summed per status and sorted by requests (1.467702ms)
✔ Cloudflare's refusal becomes the error, so the next variant is tried (0.667051ms)
✔ the telemetry questions filter on the script and on failures (0.890341ms)
✔ a calculations answer becomes rows with counts, largest first (0.845142ms)
✔ an events answer becomes plain records, the object id cut short (0.40875ms)
✔ messages fall into buckets, expected or not (1.775403ms)
✔ buckets sum the counts of their messages (0.760861ms)
✔ the text report shows rates, statuses, buckets and what could not be read (21.49883ms)
✔ a page's text leaves out scripts, styles and tags (2.292603ms)
✔ a check passes on its status with every phrase on the page (0.549841ms)
✔ a phrase only inside a script does not count (0.33772ms)
✔ the waitlist check sends an address identity refuses before writing (0.425001ms)
ℹ tests 41
ℹ suites 0
ℹ pass 40
ℹ fail 1
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 6301.409884

✖ failing tests:

test at scripts/ops/backup-restore-drill.test.mjs:71:1
✖ a chain restores every ref, and the drill fails once the live repository differs (91.262901ms)
  Error: Command failed: git tag -a v1 -m v1
  Committer identity unknown
  
  *** Please tell me who you are.
  
  Run
  
    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"
  
  to set your account's default identity.
  Omit --global to set the identity only in this repository.
  
  fatal: unable to auto-detect email address (got 'node@cloudchamber.(none)')
  
      at genericNodeError (node:internal/errors:986:15)
      at wrappedFn (node:internal/errors:540:14)
      at checkExecSyncError (node:child_process:942:11)
      at execFileSync (node:child_process:978:15)
      at git (file:///home/runner/work/repo/scripts/ops/backup-restore-drill.test.mjs:17:31)
      at TestContext.<anonymous> (file:///home/runner/work/repo/scripts/ops/backup-restore-drill.test.mjs:78:5)
      at Test.runInAsyncScope (node:async_hooks:227:14)
      at Test.run (node:internal/test_runner/test:1402:25)
      at Test.processPendingSubtests (node:internal/test_runner/test:974:18)
      at Test.postRun (node:internal/test_runner/test:1542:19) {
    status: 128,
    signal: null,
    output: [ null, '', `Committer identity unknown\n\n*** Please tell me who you are.\n\nRun\n\n  git config --global user.email "you@example.com"\n  git config --global user.name "Your Name"\n\nto set your account's default identity.\nOmit --global to set the identity only in this repository.\n\nfatal: unable to auto-detect email address (got 'node@cloudchamber.(none)')\n` ],
    pid: 3772,
    stdout: '',
    stderr: `Committer identity unknown\n\n*** Please tell me who you are.\n\nRun\n\n  git config --global user.email "you@example.com"\n  git config --global user.name "Your Name"\n\nto set your account's default identity.\nOmit --global to set the identity only in this repository.\n\nfatal: unable to auto-detect email address (got 'node@cloudchamber.(none)')\n`
  }
##[error]Process completed with exit code 1.
